package com.leador.module;

/**
 * 轨迹信息类
 */
public class TraceLocation {
  private String floor = "";
  private String indoor = "";
  private String building = "";
  private double latitude = 0.0D;
  private double longitude = 0.0D;
  private int coordType = 2;
  private double radius = 0.0D;
  private float direction = 0.0F;
  private float speed = 0.0F;
  private double altitude = 0;
  private String time = "";

  /**
   *返回楼层信息
   * @return 楼层信息
     */
  public String getFloor()
  {
    return this.floor;
  }

  /**
   * 设置楼层信息
   * @param paramString 楼层信息
     */
  public void setFloor(String paramString)
  {
    this.floor = paramString;
  }

  /**
   * 返回室内定位结果类型
   * @return 室内定位结果类型
     */
  public String getIndoor()
  {
    return this.indoor;
  }

  /**
   * 设置室内定位结果类型
   * @param paramString 室内定位结果类型
     */
  public void setIndoor(String paramString)
  {
    this.indoor = paramString;
  }

  /**
   * 获取建筑物信息
   * @return 建筑物信息
     */
  public String getBuilding()
  {
    return this.building;
  }

  /**
   * 设置建筑物信息
   * @param paramString 建筑物信息
     */
  public void setBuilding(String paramString)
  {
    this.building = paramString;
  }

  /**
   * 返回纬度坐标
   * @return 纬度坐标
     */
  public double getLatitude()
  {
    return this.latitude;
  }

  /**
   * 设置纬度坐标
   * @param paramDouble 纬度坐标
     */
  public void setLatitude(double paramDouble)
  {
    this.latitude = paramDouble;
  }

  /**
   * 返回经度坐标
   * @return 经度坐标
     */
  public double getLongitude()
  {
    return this.longitude;
  }

  /**
   * 设置经度坐标
   * @param paramDouble 经度坐标
     */
  public void setLongitude(double paramDouble)
  {
    this.longitude = paramDouble;
  }

  /**
   * 返回坐标类型
   * @return 坐标类型
     */
  public int getCoordType()
  {
    return this.coordType;
  }

  /**
   * 设置坐标类型
   * @param paramInt 坐标类型
     */
  public void setCoordType(int paramInt)
  {
    this.coordType = paramInt;
  }

  /**
   * 获取定位精度
   * @return 定位精度
     */
  public double getRadius()
  {
    return this.radius;
  }

  /**
   * 设置定位精度
   * @param paramDouble 定位精度
     */
  public void setRadius(double paramDouble)
  {
    this.radius = paramDouble;
  }

  /**
   * 返回当前定位时间
   * @return 当前定位时间
     */
  public String getTime()
  {
    return this.time ==null?"":String.valueOf(Long.parseLong(this.time)/1000);
  }

  /**
   * 设置当前定位时间
   * @param paramString
     */
  public void setTime(String paramString)
  {
    this.time = paramString;
  }

  /**
   * 返回速度方向（行进的方向）
   * @return 仅GPS定位结果时有速度信息，单位 : 度
     */
  public float getDirection()
  {
    return this.direction;
  }

  /**
   * 设置速度方向（行进的方向
   * @param paramFloat 仅GPS定位结果时有速度信息，单位 : 度
     */
  public void setDirection(float paramFloat)
  {
    this.direction = paramFloat;
  }

  /**
   * 获取速度
   * @return 仅gps定位结果时有速度信息，单位 : 公里/小时
     */
  public float getSpeed()
  {
    return this.speed;
  }

  /**
   * 设置速度
   * @param paramFloat 仅gps定位结果时有速度信息，单位 : 公里/小时
     */
  public void setSpeed(float paramFloat)
  {
    this.speed = paramFloat;
  }

  /**
   * 返回高度信息
   * @return 仅GPS定位结果时有高度信息，单位 : 米
     */
  public double getAltitude()
  {
    return this.altitude;
  }

  /**
   * 设置高度信息
   * @param paramInt 仅GPS定位结果时有高度信息，单位 : 米
     */
  public void setAltitude(int paramInt)
  {
    this.altitude = paramInt;
  }

  @Override
  public String toString() {
    return "TraceLocation{" +
            "floor='" + floor + '\'' +
            ", indoor='" + indoor + '\'' +
            ", building='" + building + '\'' +
            ", latitude=" + latitude +
            ", longitude=" + longitude +
            ", coordType=" + coordType +
            ", radius=" + radius +
            ", direction=" + direction +
            ", speed=" + speed +
            ", altitude=" + altitude +
            ", time='" + time + '\'' +
            '}';
  }
}
